package com.tbit.uqbike.service.business;

import com.tbit.uqbike.object.pojo.dto.UserFundsFlowDownloadDTO;
import com.tbit.uqbike.object.pojo.vo.UserFundsFlowSumVO;
import com.tbit.uqbike.object.pojo.vo.UserFundsFlowVO;
import com.tbit.uqbike.object.value.LoginInfo;
import com.tbit.common.entity.view.PageResult;

import java.util.Date;

/**
 * @Author:BUGTian
 * @DATE: 2022/11/19
 */
public interface UserFundsFlowService {
    /**
     * 分页查询流水记录
     *
     * @param login
     * @param page
     * @param size
     * @param startTime
     * @param endTime
     * @param phone
     * @param changeType
     * @param capitalType
     * @param businessType
     * @return
     */
    PageResult<UserFundsFlowVO> queryPage(LoginInfo login, Integer page, Integer size, Date startTime, Date endTime, String phone, Integer changeType, Integer capitalType, Integer businessType);

    String download(LoginInfo login, UserFundsFlowDownloadDTO downloadDTO);

    /**
     * 流水记录统计
     *
     * @param login
     * @param startTime
     * @param endTime
     * @param phone
     * @param changeType
     * @param capitalType
     * @param businessType
     * @return
     */
    UserFundsFlowSumVO sumTotal(LoginInfo login, Date startTime, Date endTime, String phone, Integer changeType, Integer capitalType, Integer businessType);
}
